﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ExplorerInfrastructure.Events;

namespace ExplorerInfrastructure
{
    public interface IProjectExplorer
    {
        //opens an existing project
        ProjectInfo OpenProject(string projectFilePath);
        //closes a project
        void CloseProject();
        //creates a brand new project
        void CreateNewProject(ProjectInfo projectInfo);
        //is the project opened?
        bool IsOpened();
        //project path and name
        string ProjectName { get; }
        string ProjectPath { get; }

        event EventHandler<FileEventArgs> ItemCreated;
        event EventHandler<FileEventArgs> ItemAdded;
        event EventHandler<FileEventArgs> ItemOpened;
        event EventHandler<FileEventArgs> ItemDeleted;
        event EventHandler<FileRenamedEventArgs> ItemRenamed;
        event EventHandler<FileEventArgs> ProjectClosed;

    }
}
